For some years, it has been a goal to separate the interface module from the body of the user application, essentially to gain flexibility in creation and adaptation. This makes it easier for the interface developer to adapt his program to the hardware as needed, for instance when creating a capture mask or a display mask. The current trend is accordingly to develop interfaces independently of the body of the user application, and to assemble the two programs in the final phase, just before they are executed.
Microsoft has developed a graphics-mode user applications management system called MS-Windows, with which such applications interfaces can be generated by programming and executed. Even though this management system performs well for the end user, access to it is still difficult for the interface developer user, who must be an experienced programmer. In fact, such development cannot be done without learning various programming languages, such as C, beforehand, which is a very long, complicated process.